package com.aikon.wht.designPattern.async;

import java.util.concurrent.Callable;

/**
 * @author haitao.wang
 */
public interface AsyncExecutor {

    <T> AsyncResult<T> process(Callable<T> callable);

    <T> AsyncResult<T> process(Callable<T> callable, AsyncCallback<T> asyncCallback);

    <T> T endProcess(AsyncResult<T> asyncResult) throws InterruptedException;

}
